Adicione um form ( no exemplo chamei ele de frmPrincipal) e adicione 4 campos:
•1-Servidor-txtServidor
•2-Banco de dados-tstBD
•3-Usuário-txtUsuario
•4-Senha-txtSenha
Não se esqueça que senha você tem que colocar no PassWordChar o * ou # para que ninguém visualize o texto da senha digitada.
Para funcionar também é preciso instalar o System.Data que permite o acesso aos objetos do SQL Server.
Criei as funções de acesso ao MS SQL de todos os tipos:
•1-DefineStrConexao: Monta o string de conexão.
•2-AbreConexao: Abre a conexão com o servidor SQL se já não estiver aberta.
•3-MS_SQL_SRV_DS: Faz a pesquisa e retorna um Dataset. No Dataset.tables(0) estarão os dados retornados pela pesquisa.
•4-MS_SQL_SRV_EX: Executa um comando que não retorna nada (truncate, delete, etc) exceto uma mensagem de erro se estiver errado.
•5-MS_SQL_SRV_INT: Executa um comando que retorna apenas um inteiro como na pesquisa de um índice ou um next value.
•6-MS_SQL_SRV_STR>Executa um comando que retorna um string. Apenas um string como um nome de tabela.
•7-MS_SQL_SRV_Single>Executa um comando que retorna um single. Apenas um número single.
•8-MS_SQL_RS: Executa um comando que retorna um Recordset. É o ideal para popular um GridView.
•9-MS_SQL_SQL_Proc: Executa uma proc. Possui 2 parâmetros: um é o comando e o segundo são os parâmetros da Proc.
Criei uma variável global chamada erro assim se ocorrer um erro a mensagem será depositada nele.
Senão ocorrer nenhum erro a variavel erro virá em branco.
Imports System.Data.SqlClient
'gerenciador de pacotes - instalar o System Data Client
Module ModuloMSSQLWindowsForms
Public cnstr As String = "" 'string de conexão com o banco de dados
Public cncn As New SqlConnection 'conexão com o banco de dados
Public Erro As String = "" 'troca de mensagens de erro
''' <summary>
''' Define o string de conexão com o banco de dados que dependente da url de acesso do site
''' </summary>
Public Sub DefineStrConexao()
cnstr = "Server=" + frmPrincipal.txtServidor.Text + ";Database=" + frmPrincipal.txtBD.Text + ";User Id=" + frmPrincipal.txtUsuario.Text + ";Password=" + frmPrincipal.txtSenha.Text
End Sub
''' <summary>
''' abre a conexão com o banco de dados
''' </summary>
Public Sub AbreConexao()
Erro = ""
Try
If cncn.ConnectionString = "" Then
DefineStrConexao()
cncn.ConnectionString = cnstr
cncn.Open()
Return
End If
Catch ex As SqlException
Erro = ex.Message
End Try
End Sub
''' <summary>
''' Faz a pesquisa e retorna um DataSet
''' </summary>
Public Function MS_SQL_SRV_DS(Query As String) As DataSet
Erro = ""
Try
AbreConexao()
Dim cmd = New SqlCommand(Query, cncn)
Dim MS_SQL_SqlDtAdapter = New SqlDataAdapter(cmd)
Dim DS As New DataSet()
MS_SQL_SqlDtAdapter.Fill(DS)
Return DS
Catch ex As Exception
Erro = ex.Message
Return Nothing
End Try
End Function
''' <summary>
'''executa um sql que não retorna nada
''' </summary>
Public Sub MS_SQL_SRV_EX(query As String)
Erro = ""
Try
AbreConexao()
Dim cmd = New SqlCommand(query, cncn)
cmd.CommandTimeout = 20000
cmd.ExecuteNonQuery()
cncn.Close()
Catch ex As Exception
Erro = ex.Message
'Throw ex
End Try
End Sub
''' <summary>
'''executa um sql que retorna um inteiro
''' </summary>
Public Function MS_SQL_SRV_INT(query As String) As Integer
Erro = ""
Try
AbreConexao()
Dim cmd = New SqlCommand(query, cncn)
cmd.CommandText = query
Return cmd.ExecuteScalar()
Catch ex As Exception
Return Nothing 'erro
Erro = ex.Message
'Throw ex
End Try
End Function
''' <summary>
''' executa um sql que retorna um String
''' </summary>
''' <param name="query"></param>
''' <returns></returns>
Public Function MS_SQL_SRV_STR(query As String) As String
Erro = ""
Try
AbreConexao()
Dim cmd = New SqlCommand(query, cncn)
cmd.CommandText = query
Return cmd.ExecuteScalar()
Catch ex As Exception
Erro = ex.Message
Return Nothing
'Throw ex
End Try
End Function
''' <summary>
''' executa um sql que retorna um single(sql)
''' </summary>
''' <param name="query"></param>
''' <returns></returns>
Public Function MS_SQL_SRV_Single(query As String)
Erro = ""
Try
AbreConexao()
Dim cmd = New SqlCommand(query, cncn)
cmd.CommandText = query
Return cmd.ExecuteScalar()
Catch ex As Exception
Erro = ex.Message
Return Nothing 'erro
'Throw ex
End Try
End Function
''' <summary>
'''faz a pesquisa e retorna um RecordSet
''' </summary>
Public Function MS_SQL_RS(query As String) As DataSet
Erro = ""
Try
AbreConexao()
Dim da As New SqlDataAdapter(query, cncn)
Dim ds As New DataSet
da.Fill(ds)
cncn.Close()
Return ds
Catch ex As SqlException
Erro = ex.Message
Return Nothing
'Throw ex
End Try
End Function
''' <summary>
''' Executa uma procedure e retorna um dataset
''' Parametros = "P1,P2,P3,P4..."
''' </summary>
Public Function MS_SQL_SQL_Proc(Procedure As String, Parametros As String) As DataSet
Erro = ""
Try
Dim SQL As String = Procedure + " " + Parametros
Dim cmd As New SqlCommand(SQL, cncn)
Dim da As New SqlDataAdapter(cmd)
Dim ds As New DataSet()
da.Fill(ds)
Return ds
Catch ex As Exception
Erro = ex.Message
Return Nothing
'Throw ex
End Try
End Function
End Sub
End Module